Regression with compositional data using the \(\alpha\)-transformation.
alfa.reg(y, x, a, xnew = NULL, yb = NULL, seb = FALSE)
A matrix with the compositional data.
A matrix with the continuous predictor variables or a data frame including categorical predictor variables.
The value of the power transformation, it has to be between -1 and 1. If zero values are present it has to be greater than 0. If \(\alpha=0\) the isometric log-ratio transformation is applied and the solution exists in a closed form, since it the classical mutivariate regression.
If you have new data use it, otherwise leave it NULL.
If you have already transformed the data using the \(\alpha\)-transformation with the same \(\alpha\) as given in the argument "a", put it here. Othewrise leave it NULL.
This is intended to be used in the function alfareg.tune
in order to speed up the process. The time difference in that function is small for small samples.
But, if you have a few thousands and or a few more components, there will be bigger differences.
Do you want the standard error of the coefficients to be returned? In the alfareg.tune
function this extra computation that is avoided can save some time.
A list including:
The time required by the regression.
The beta coefficients.
The standard error of the beta coefficients.
The fitted values for xnew if xnew is not NULL.
The \(\alpha\)-transformation is applied to the compositional data first and then multivariate regression is applied. This involves numerical optimisation.
Tsagris M. (2015). Regression analysis with compositional data containing zero values. Chilean Journal of Statistics, 6(2): 47-57. https://arxiv.org/pdf/1508.01913v1.pdf
Tsagris M.T., Preston S. and Wood A.T.A. (2011). A data-based power transformation for compositional data. In Proceedings of the 4th Compositional Data Analysis Workshop, Girona, Spain. https://arxiv.org/pdf/1106.1451.pdf
Mardia K.V., Kent J.T., and Bibby J.M. (1979). Multivariate analysis. Academic press.
Aitchison J. (1986). The statistical analysis of compositional data. Chapman & Hall.
alfareg.tune, diri.reg, js.compreg, kl.compreg, ols.compreg, comp.reg
# NOT RUN {
library(MASS)
x <- as.vector(fgl[1:40, 1])
y <- as.matrix(fgl[1:40, 2:9])
y <- y / rowSums(y)
mod <- alfa.reg(y, x, 0.2)
# }
Run the code above in your browser using DataLab